/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sisvoto.Reportes;

import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.HashMap;
import javax.swing.JDialog;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.JasperViewer;
import sisvoto.Utiles.ConexionAlterna;

/**
 *
 * @author Dianita
 */
public class Reportes {

    //conexion directa desde el ireport
    public void reporte(String nombreReporte, JDialog form, HashMap mapa) throws JRException {
        JasperReport reporte = (JasperReport) JRLoader.loadObject(getClass().getResource("/sisvoto/Reportes/" + nombreReporte + ".jasper"));
        JasperPrint jasperPrint = JasperFillManager.fillReport(reporte, mapa, new ConexionAlterna("localhost", "sisvoto", "root", "root").conectar());
        String dirDestino = "C:/reportes/" + nombreReporte + ".pdf";
        JasperExportManager.exportReportToPdfFile(jasperPrint, dirDestino);
        JasperViewer view = new JasperViewer(jasperPrint,false);
        view.setVisible(true);
        
    }
    
    //conexion ersonalizada 
     public void reporteparametros(String nombreReporte, String query, HashMap mapa) throws JRException, SQLException {
        Statement statement;
        ResultSet resulset;
        
        statement = (new ConexionAlterna("localhost", "sisvoto", "root", "root").conectar()).createStatement();
        resulset = statement.executeQuery(query);        
        JRResultSetDataSource resultSetDataSource = new JRResultSetDataSource(resulset);
        JasperReport reporte = (JasperReport) JRLoader.loadObject(getClass().getResource("/sisvoto/Reportes/" + nombreReporte + ".jasper"));
        JasperPrint jasperPrint = JasperFillManager.fillReport(reporte, mapa, resultSetDataSource);
        String dirDestino = "C:/reportes/" + nombreReporte + ".pdf";
        JasperExportManager.exportReportToPdfFile(jasperPrint, dirDestino);
        JasperViewer view = new JasperViewer(jasperPrint,false);
        view.setVisible(true);
    }
}
